Digital equalizer adaptation using on-die instrument

ABSTRACT

Systems and methods are provided for adjusting gain of a receiver. Adaptation circuitry is operable to identify, based on a matrix representation of a receiver&#39;s output generated from horizontal and vertical sweeps of the receiver&#39;s output, an eye opening of the receiver&#39;s output. The adaptation circuitry is also operable to determine whether a size of the eye opening needs to be changed. When it is determined that the size of the eye opening needs to be changed, the adaptation circuitry is operable to generate a digital signal to change a gain setting of the receiver. When the signal at the receiver&#39;s output is under-equalized, the AC gain of the receiver is increased. When the signal at the receiver&#39;s output is over-equalized, the AC gain of the receiver is decreased.

CROSS REFERENCE

This patent document claims the benefit of, and priority to, U.S.Provisional Application No. 61/782,855, filed Mar. 14, 2013, thedisclosure of which is hereby incorporated by reference herein in itsentirety.

FIELD OF THE DISCLOSURE

This disclosure relates to systems and methods for adjusting the gain ofa receiver in a communications system having digital adaption circuitryand an on-die instrument (ODI).

BACKGROUND OF THE DISCLOSURE

As data rates increase in a backplane, transmitted signals are subjectto attenuation, reflections, and coupling. Data rates are often so fastthat a transmitted signal may reach the bandwidth limitations of thetransmission medium (e.g., wire), resulting in channel loss anddegradation of the signal's eye opening by the time the signal reaches areceiver.

A receiver performs the dual functions of receiving an input signal and“boosting” the signal up (i.e., increasing the size of the eye opening)so that data can be recovered (e.g., by a sense amplifier or latch). Areceiver may provide both DC gain and AC gain to the input signal.Increasing DC gain boosts all frequency components up to the Nyquistfrequency (i.e., half of the data rate), including crosstalk and noise.Increasing AC gain of the received input signal boosts a particularfrequency component, such as the frequency of the data rate, which mayhave been attenuated when it was transmitted in the transmission medium,due to channel loss. The greater the channel loss, the more AC gain areceiver may have to supply to the input signal, to compensate for theloss. If a receiver does not supply enough AC gain, the size of theinput signal's eye opening may be too small for data to be accuratelyrecovered, resulting in a high bit error rate (BER). However, if the ACgain level is too high, the input signal may be over-equalized, whichmay also result in a high BER. Thus, it is important to find and set thecorrect AC and DC gains for any given backplane to achieve asufficiently low BER.

Analog adaptation capabilities for finding suitable AC and DC gains fora transceiver are well known. However, analog adaptation circuitry maybe susceptible to process variations and component mismatches, and maynot be easily migrated to a new process. In addition, analog adaptationis costly, requires a large silicon area, and consumes a lot of power.

SUMMARY OF THE DISCLOSURE

In light of the above, the present disclosure relates to systems andmethods for a digital adaptation block (“digital block”) in acommunications system. Digital blocks may be easily migrated to anyprocess node, and may also consume less power and take up less die areathan their analog counterparts. In addition, digital blocks may bescalable for different processes and may not need to be optimized foranalog components.

In accordance with embodiments of the present disclosure, adaptationcircuitry is provided that is operable to identify, based on a matrixrepresentation of a receiver's output generated from horizontal andvertical sweeps of the receiver's output, an eye opening of thereceiver's output. Elements of the generated matrix representation mayhave a first value where an eye opening exists and a second value wherean eye opening does not exist. The adaptation circuitry may be operableto control the horizontal and the vertical sweeps of the receiver'soutput, and to find envelope limits of the receiver's output. Theadaptation circuitry is also operable to determine whether a size of theeye opening needs to be changed. When it is determined that the size ofthe eye opening needs to be changed, the adaptation circuitry isoperable to generate a digital signal to change a gain setting of thereceiver.

In accordance with additional embodiments of the present disclosure, theadaptation circuitry is further operable to calculate a vertical heightof the identified eye opening and compare the calculated vertical heightto a pre-defined vertical envelope or to an optimum vertical eyeopening.

In accordance with additional embodiments of the present disclosure, theadaptation circuitry is further operable to determine whether thereceiver's output is under-equalized or over-equalized. When it isdetermined that the receiver's output is under-equalized, the adaptationcircuitry is operable to generate a digital signal to increase AC gainof the receiver if the AC gain of the receiver is not at a maximumsetting. If the AC gain of the receiver is at the maximum setting, theadaptation circuitry is operable to generate a digital signal todecrease DC gain of the receiver and set the AC gain of the receiversubstantially equal to zero. When it is determined that the receiver'soutput is over-equalized, the adaptation circuitry is operable togenerate a digital signal to decrease the AC gain of the receiver if theAC gain of the receiver is not at a minimum setting. If the AC gain ofthe receiver is at the minimum setting, the adaptation circuitry isoperable to generate a digital signal to increase the DC gain of thereceiver and set the AC gain of the receiver substantially equal tozero. Methods corresponding to the above-mentioned systems are alsoprovided.

In accordance with additional embodiments of the present disclosure,there is provided a communications system that includes a receiverhaving at least one amplifier, and an on-die instrument (ODI) configuredto sample an output of the receiver. The communications system alsoincludes a first digital adaptation unit configured to analyze outputsof the ODI, control horizontal and vertical sweeps of the receiver'soutput that are used to generate a matrix representation of thereceiver's output, and generate a first set of digital signals foradjusting a gain setting of at least one amplifier in the receiver.

In accordance with additional embodiments of the present disclosure, thecommunications system further includes a decision feedback equalizer(DFE) configured to amplify the output of the receiver, and a clock-datarecovery (CDR) unit coupled to an output of the DFE and configured tosend data to the ODI. The communications system may have circuitry forbypassing the DFE such that the CDR unit is coupled to the output of thereceiver. The communications system may also include a second digitaladaptation unit configured to generate a second set of digital signalsfor adjusting a gain setting of the DFE.

In accordance with additional embodiments of the present disclosure, thecommunications system may also include a digital-to-analog converterconfigured to generate, based on the first set of digital signals, abias signal that sets the gain setting of at least one amplifier in thereceiver. The receiver may have a plurality of amplifiers. Thedigital-to-analog converter may generate, based on the first set ofdigital signals, a first plurality of bias signals for setting AC gainsof the plurality of amplifiers. The digital-to-analog converter may alsogenerate, based on the first set of digital signals, a second pluralityof bias signals for setting DC gains of the plurality of amplifiers.

BRIEF DESCRIPTION OF THE FIGURES

Further features of the disclosure, its nature and various advantageswill be apparent upon consideration of the following detaileddescription, taken in conjunction with the accompanying drawings, inwhich like referenced characters refer to like parts throughout, and inwhich:

FIG. 1 is a block diagram of a communications system having anadjustable gain receiver, according to an illustrative embodiment;

FIG. 2 is a block diagram of a communications system having anadjustable gain receiver and an adjustable gain DFE, according to anillustrative embodiment;

FIG. 3 is a block diagram of a communications system having a multistageamplifier as a receiver, according to an illustrative embodiment;

FIG. 4A shows an eye diagram of an under-equalized signal, according toan illustrative embodiment;

FIG. 4B shows an eye diagram of an over-equalized signal, according toan illustrative embodiment;

FIG. 4C shows an eye diagram of a properly equalized signal, accordingto an illustrative embodiment;

FIG. 5 shows an illustrative flow diagram of a process for adjusting thegain of a receiver, according to an illustrative embodiment;

FIG. 6 shows an illustrative flow diagram of a process for determininghow to adjust the AC and/or DC gain of a receiver, according to anillustrative embodiment;

FIG. 7 shows an illustrative flow diagram of a process for finding theenvelope of an eye diagram, according to an illustrative embodiment;

FIG. 8 shows an illustrative flow diagram of a process for determiningwhether a signal is under-equalized and/or over-equalized, according toan illustrative embodiment; and

FIG. 9 shows an illustrative system that may be used to implement someembodiments of the present disclosure.

DETAILED DESCRIPTION

To provide an overall understanding of the invention, certainillustrative embodiments will now be described. However, it will beunderstood by one of ordinary skill in the art that the systems andmethods described herein may be adapted and modified as is appropriatefor the application being addressed and that the systems and methodsdescribed herein may be employed in other suitable applications, andthat such other additions and modifications will not depart from thescope hereof.

The figures described herein show illustrative embodiments; however, thefigures may not necessarily not show and may not be intended to show theexact layout of the hardware components contained in the embodiments.The figures are provided merely to illustrate the high level conceptuallayouts of the embodiments. The embodiments disclosed herein may beimplemented with any suitable number of components and any suitablelayout of components in accordance with principles known in the art.

FIG. 1 shows an illustrative block diagram of a communications system100 having an adjustable gain receiver 102, according to an illustrativeembodiment. Receiver 102 receives and amplifies an input signal.Although receiver 102 in FIG. 1 is shown to receive a single inputsignal, it should be understood that receiver 102 may receive any numberof input signals, such as a differential input signal. In someembodiments, receiver 102 may have multiple amplifier stages, asdiscussed below with respect to FIG. 3. The AC and DC gain of each stageof receiver 102 may be adjusted by digital signals received from digitalto analog block 120.

The output of receiver 102 is passed to decision feedback equalizer(DFE) 104, which filters the input signal and provides additional gain.In some embodiments, DFE 104 may be part of receiver 102. In someembodiments, DFE 104 may have only passive components. In someembodiments, DFE 104 may have active components. The output of DFE 104is passed to clock-data recovery (CDR) block 106. In some embodiments,the additional gain of DFE 104 may not be needed, and switch 108 may beused to bypass DFE 104 such that the output of receiver 102 is passeddirectly to clock-data recovery (CDR) block 106.

CDR block 106 recovers and samples a clock from the incoming datastream. CDR block 106 may include a sense amplifier, phase detector,charge pump, and voltage-controlled oscillator (VCO). The output of CDRblock 106 is passed to on-die instrument (ODI) 110, which may use datafrom CDR block 106 to analyze the output of DFE 104 or, if DFE 104 isbypassed, the output of receiver 102. It should be understood that theoutput of receiver 102 is analyzed when DFE 104 is bypassed, and thatthe output of DFE 104 is analyzed when DFE 104 is not bypassed. Itshould be understood that all discussions herein of the analysis of theoutput of a receiver (e.g., receiver 102) are applicable to the analysisof the output of a DFE (e.g., DFE 104).

ODI 110 may analyze the output of receiver 102 by generating a matrixrepresentation of the receiver's output, and measuring the eye openingof the receiver's output based on the generated matrix representation.ODI 110 may include a phase interpolator 112, sampler 114, and bit errorchecker 116, all of which may be used to generate a matrixrepresentation of the output of receiver 102. Phase interpolator 112 mayscan the phase of the output of receiver 102 to perform a horizontalsweep of the receiver's output. The time between phase steps may bedetermined by ODI counter delay control bits. The horizontal phase stepdata may be sampled by sampler 114 and sent to bit error checker 116 toperform a vertical sweep of the receiver's output. Where signalinformation is present, bit error checker 116 may output a first symbol(e.g., a logical ‘0’) for a sample in an eye opening of the receiver'soutput, and may output a second symbol (e.g., a logical ‘1’) otherwise.The matrix representation generated by ODI 110 thus resembles an eyediagram of the output of receiver 102, with, for example, 0's in theregions corresponding to eye openings and l's everywhere else. The sizeof the matrix may be determined by the granularity of phase interpolator112 and bit error checker 116. For example, if phase interpolator 112scans 64 horizontal phase steps and bit error checker 116 is a 128-bitcomparator, a 128×64 matrix will be created.

The matrix representation generated by ODI 110 may be analyzed bydigital adaptation block 118 to determine whether the eye opening at theoutput of receiver 102 is suitable for accurate data recovery. In someembodiments, digital adaptation block 118 may calculate a vertical eyeopening based on the generated matrix representation by, for example,calculating the number of consecutive rows that have logical 0's in thesame column. Digital adaptation block 118 may determine, based on thegenerated matrix representation, whether the output is under-equalized,over-equalized, or properly equalized. Illustrative eye diagrams ofunder-equalized, over-equalized, and properly equalized signals arediscussed further with respect to FIGS. 4A-C.

If digital adaptation block 118 determines that the output of receiver102 is not properly equalized (e.g., under-equalized or over-equalized),digital adaptation block 118 generates a digital signal to change one ormore gain settings of receiver 102. In some embodiments, the digitalsignal may be a bit string. The generated digital signal is passed todigital to analog block 120, which may generate, based on the digitalsignal, one or more bias signals that change one or more gain settingsin receiver 102. The bias signals generated by digital to analog block120 may change the AC gain or DC gain, or both, of receiver 102. Anillustrative process for determining how the AC and/or DC gain of areceiver should be changed is discussed further with respect to FIG. 6.The change(s) in gain(s) will change the eye opening of the output ofreceiver 102 (and of the output of DFE 104, if not bypassed).

Digital adaptation block 118 may choose the best sampling point for thereceiver's output and may control the horizontal and the vertical sweepsperformed by ODI 110 to generate another matrix representation of thereceiver's output. The gain settings of receiver 102 may be changed, andcorresponding matrix representations of the receiver's output generatedand analyzed, as part of an iterative process (e.g., the processdiscussed with respect to FIG. 6) until the eye opening of the output ofreceiver 102 is suitable for accurate data recovery.

In some embodiments, the gain of DFE 104 may be adjustable. FIG. 2 showsan illustrative block diagram of a communications system 200 having anadjustable gain receiver 202 and an adjustable gain DFE 206, accordingto an illustrative embodiment. Receiver 202, switch 210, clock-datarecovery (CDR) block 208, on-die instrument (ODI) 212, digitaladaptation block 214, and digital to analog block 220 of FIG. 2 areanalogous to receiver 102, switch 108, CDR block 106, ODI 110, digitaladaptation block 118, and digital to analog block 120, respectively, ofFIG. 1. It should be understood that the term “analogous” as used hereinmeans similar in form and function. In some embodiments, at least someelements (e.g., digital adaptation blocks 118 and 214, ODIs 110 and 212)of communications systems 100 and/or 200 may be implemented on circuitryof an integrated circuit (IC) or programmable logic device (PLD).

In some embodiments (e.g., if gain provided by DFE 206 is not needed),DFE 206 may be bypassed by switch 210 such that the output of receiver202 is passed directly to CDR block 208. In some embodiments, the gainof DFE 206 may be controlled by a digital adaptation block (not shown)that is analogous to but distinct from digital adaptation block 214, andwhich may include a digital to analog block similar to digital to analogblock 220. In some embodiments, digital adaptation circuitry may bebuilt into DFE 206.

Digital adaptation circuitry that controls the gain of DFE 206 mayanalyze data, such as a matrix representation of the output of DFE 206,from ODI 212 to determine whether the eye opening at the output of DFE206 is suitable for accurate data recovery. The generation, contents,and analysis of a matrix representation of the output of DFE 206 may beanalogous to those of a matrix representation of the output of receiver102, as discussed above with respect to FIG. 1. Based on the analysis ofa matrix representation of the DFE's output, digital adaptationcircuitry that controls the gain of DFE 206 may generate one or moredigital signals to change the AC gain, DC gain, or both of DFE 206using, for example, a process similar to that discussed with respect toFIG. 6. Such digital adaptation circuitry may execute an iterativeprocess analogous to that discussed with respect to FIG. 1 until the eyeopening of the output of DFE 206 is suitable for accurate data recovery.

Communications system 200 includes multiplexer 216 and multiplexer 218,which each allow digital adaptation block 214 to be bypassed in favor ofmanual settings. Multiplexer 216 allows for selection between an outputfrom digital adaptation block 214 and manual settings as an input to ODI212. Selecting the manual settings using multiplexer 216 allows a userof system 200 to manually control the horizontal and vertical sweeps andother functions performed by ODI 212. Multiplexer 218 allows forselection between an output from digital adaptation block 214 and manualsettings as an input to digital to analog block 220. Selecting themanual settings using multiplexer 218 allows a user of system 200 tomanually set the AC and DC gains of receiver 202. In embodiments wherethe gain of DFE 206 is controlled by a separate digital adaptationblock, a multiplexer (not shown) may be placed between the digitaladaptation block and DFE 206 to allow the digital adaptation block to bebypassed in favor of manual settings.

A user of system 200 may select between a digital adaptation block andmanual settings by setting a bypass configuration bit. In someembodiments, the manual settings may be read from a memory (not shown)that is part of system 200. In some embodiments, system 200 may receivethe manual settings from a user or from circuitry external to system 200via I/O circuitry (e.g., I/O circuitry 950 of FIG. 9).

In some embodiments, receiver 202 of FIG. 2, or receiver 102 of FIG. 1,may have more than one amplifier with adjustable gain. FIG. 3 shows anillustrative block diagram of a communications system 300 having amultistage amplifier as a receiver, according to an illustrativeembodiment. In some embodiments, communications system 300 may beimplemented as part of communications system 100 of FIG. 1, wheredigital to analog block 322 and digital adaptation block 324 of FIG. 3are analogous to digital to analog block 120 and digital adaptationblock 118, respectively, of FIG. 1, and the dotted box labeled“Receiver” 330 (referred to herein as “receiver 330”) of FIG. 3 is amore detailed illustration of receiver 102 of FIG. 1. In someembodiments, communications system 300 may be implemented as part ofcommunications system 200 of FIG. 2, where digital to analog block 322and digital adaptation block 324 of FIG. 3 are analogous to digital toanalog block 220 and digital adaptation block 214, respectively, of FIG.2, and receiver 330 of FIG. 3 is a more detailed illustration ofreceiver 202 of FIG. 2.

Receiver 330 of FIG. 3 includes a first amplifier 302, a secondamplifier 304, and a third amplifier 306, each with adjustable AC and DCgain controls. In some embodiments, second amplifier 304 and thirdamplifier 306 may be bypassed by closing switch 308. The AC gain levelof first amplifier 302 may be set by AC gain control 310, and the DCgain level of first amplifier 302 may be set by DC gain control 312. TheAC gain level of second amplifier 304 may be set by AC gain control 314,and the DC gain level of second amplifier 304 may be set by DC gaincontrol 316. The AC gain level of third amplifier 306 may be set by ACgain control 318, and the DC gain level of third amplifier 306 may beset by DC gain control 320. AC gain controls 310, 314, and 318 and DCgain controls 312, 316, and 320 may receive bias signals from digital toanalog block 322, which in turn may receive digital signals for gainadjustment from digital adaptation block 324.

In some embodiments, the digital signals for gain adjustment may be inthe form of a bit string. In some embodiments, the output of digitaladaptation block 324 may be a 6-bit string, which allows for 64 steps ofgain. Each step may correspond to, for example, a 15-mV change in thereceiver's overall gain, which may be effected by one of amplifiers 302,304, and 306. In some embodiments, gain increments may be spread amongamplifiers 302, 304, and 306 such that the gain of first amplifier 302is greater than or equal to that of second amplifier 304, and the gainof second amplifier 304 is greater than or equal to that of thirdamplifier 306. The order in which AC and DC gain are increased amongamplifiers 302, 304, and 306 may be determined using gain configurationbits.

The AC and DC gain levels of a receiver, such as receiver 102 of FIG. 1,receiver 202 of FIG. 2, or receiver 330 of FIG. 3, may be set based onthe size of the eye opening of the receiver's output, as represented inan eye diagram. The eye diagram of the receiver's output may change asthe AC and DC gains change. Ideally, an eye diagram has an eye openingthat is wide both horizontally and vertically, with no overshoots andundershoots of the signal envelope. The ideal place to sample a signalis in the center (both horizontally and vertically) of the eye opening.

FIGS. 4A-C show illustrative eye diagrams of a signal at a receiver'soutput. In FIGS. 4A-C, the vertical axes measure the amplitude (e.g., inunits of voltage or power) of the signal, and the horizontal axesmeasure time passed.

FIG. 4A shows an illustrative eye diagram 400 of an under-equalizedsignal, according to an illustrative embodiment. In the eye diagram ofan under-equalized signal, such as eye diagram 400, there is nodistinguishable eye opening within the envelope of the signal. Theabsence of an eye opening, or a very small eye opening, indicates severedistortion of the signal waveform, which may be caused by inter-symbolinterference and channel noise.

FIG. 4B shows an illustrative eye diagram 430 of an over-equalizedsignal, according to an illustrative embodiment. The eye diagram of anover-equalized signal, such as eye diagram 430, is characterized byovershooting and undershooting of the signal envelope. In eye diagram430, the signal envelope can be seen as two parallel horizontal lines.The local minima and local maxima of the signal prominently fall belowand exceed, respectively, the envelope. The overshooting andundershooting may be caused by interruptions in the signal path.

FIG. 4C shows an illustrative eye diagram 460 of a properly equalizedsignal, according to an illustrative embodiment. In eye diagram 460, theeye opening is wide both horizontally and vertically, and there are nosignificant overshoots or undershoots of the signal envelope. An eyediagram similar to eye diagram 460 indicates that data can be accuratelyrecovered by the receiver.

To obtain an eye diagram like eye diagram 460, the AC and DC gain levelsof a receiver must be properly set. FIGS. 5-6 show illustrativeprocesses for adjusting the gain of a receiver. Although the discussionsherein with respect to FIGS. 5-6 relate to analyzing an output of areceiver and adjusting gain settings of the receiver, it should beunderstood that the processes of FIGS. 5-6 may also be applied toanalyzing an output of a DFE and adjusting gain settings of the DFE.

FIG. 5 shows an illustrative process 500 for adjusting the gain of areceiver, according to an illustrative embodiment. The elements ofprocess 500 may be carried out by circuitry of an integrated circuitdevice, as discussed below with respect to FIG. 9. Process 500 starts at502, and at 504, a matrix representation of the receiver's output may begenerated based on horizontal and vertical sweeps of the receiver'soutput. The matrix representation may be generated by an ODI, such asODI 110, as discussed above with respect to FIG. 1.

At 506, an eye opening of the receiver's output may be identified basedon the generated matrix representation at 504. As discussed above withrespect to FIG. 1, an eye opening may be identified as a cluster of 0'sin the matrix representation generated by the ODI. A vertical height ofthe identified eye opening may be calculated based on the generatedmatrix representation.

At 508, it may be determined whether the size of the eye openingidentified at 506 needs to be changed. A process for making such adetermination is discussed further with respect to FIG. 6. In general,the size of the eye opening may need to be changed if the signal at thereceiver's output is under-equalized (as illustrated above in FIG. 4A)or over-equalized (as illustrated above in FIG. 4B). The size of the eyeopening may not need to be changed if the signal at the receiver'soutput is properly equalized (as illustrated above in FIG. 4C). Aprocess for determining whether a signal is under-equalized orover-equalized is discussed further with respect to FIG. 8.

If, at 508, it is determined that the size of the eye opening needs tobe changed, process 500 proceeds to 510. At 510, a digital signal may begenerated to change a gain setting of the receiver. In general, if thesignal at the receiver's output is under-equalized, the AC gain of thereceiver should be increased, or if the AC gain is already at themaximum level, the DC gain should be decreased, and the AC gain setequal to its minimum level (e.g., substantially zero) to be swept again.If the signal at the receiver's output is over-equalized, the AC gain ofthe receiver should be decreased, or if the AC gain is already at theminimum level, the DC gain should be increased, and the AC gain setequal to its minimum level (e.g., substantially zero) to be swept again.

In some embodiments, the AC gain may be set equal to its maximum level,rather than its minimum level, to be swept again after the DC gain isincreased or decreased. Whether the AC gain is swept from minimum tomaximum, or from maximum to minimum, may depend on the value of an ACsweep control bit. The AC sweep control bit may be received from localcircuitry used to implement process 500, or from external circuitry or auser via I/O circuitry.

After a digital signal to change a gain setting is generated at 510,process 500 may loop back to 508. In some embodiments, after each changein AC gain, a time period set by one or more gain counter delay controlbits may be allowed to pass before the size of the eye opening isanalyzed again at 508.

If, at 508, it is determined that the size of the eye opening identifiedat 506 does not need to be changed, process 500 ends at 512. Adetermination that the size of the eye opening does not need to bechanged may indicate that the signal at the receiver's output isproperly equalized and that data can be accurately recovered using thecurrent gain settings of the receiver.

FIG. 6 shows an illustrative process 600 for determining how to adjustthe AC and/or DC gain of a receiver, according to an illustrativeembodiment. Process 600 includes elements for identifying an eye openingof a receiver's output and determining whether the size of the eyeopening needs to be changed in order for data to be accuratelyrecovered. If, during process 600, it is determined that the size of theeye opening needs to be changed, digital signals are generated to adjustthe AC and/or DC gains of the receiver.

Process 600 may be performed by a communications system, such ascommunications system 100 or communications system 200, that includes areceiver, a CDR block, an ODI, and a digital adaptation block. In someembodiments, process 600 may be performed once for a received inputsignal. In some embodiments, process 600 may be performed continuouslyas long as an input signal is being received. A user of a communicationssystem may select between one-time and continuous adaptation by settingan adaptation configuration bit. If one-time adaptation is selected, thedigital adaptation block may be put in standby mode at the conclusion ofprocess 600 until a reset signal is received. In some embodiments, adigital adaptation block may be reset by setting an adaptation restartbit.

The elements of process 600 may be carried out by circuitry of anintegrated circuit device, as discussed below with respect to FIG. 9.Process 600 starts at 602, and at 604, the lock_to_reference bit of theCDR block is set to a first value (e.g., 1) so that the envelope limitsof the eye diagram of the receiver's output may be determined. When thelock_to_reference bit is set to, for example, 1, the CDR block may lockonto a reference frequency and may ignore phase information in thereceived data. At 606, the envelope limits of the receiver's output arefound. The envelope limits may be found using a process similar toprocess 700, which is discussed below with respect to FIG. 7.

The envelope limits of an eye diagram delineate the maximum size of theeye opening without attenuation. Because high (e.g., AC) frequenciesexperience more channel loss than low (e.g., DC) frequencies, the AC andDC gain levels at 604 and 606 may be set based on what types ofcomponents are in a DFE in the system performing process 600. In someembodiments, process 600 may be performed by a communications systemhaving a DFE with all passive components. To reduce peaking in suchembodiments, the DC gain of the receiver may be set to the maximum leveland the AC gain set to the minimum level while elements 604 and 606 areperformed. For embodiments where process 600 is performed by acommunications system having a DFE with active components, the DC gainmay be set to the minimum level while elements 604 and 606 are performedbecause the active components can be turned off.

After the envelope limits are found at 606, process 600 proceeds to 608,at which the lock_to_reference bit of the CDR block may be set to asecond value (e.g., 0). When the lock_to_reference bit is set to, forexample, 0, the CDR block may process the received signal, including itsphase information. The ODI and digital adaptation block may thenidentify and analyze an eye opening within the envelope limits.

It should be understood that the value of the lock_to_reference bit forwhich the CDR block ignores the received signal may depend on the userimplementation. For example, in some embodiments, the CDR block mayignore the received signal when the lock_to_reference bit is set to asecond value (e.g., 0) and process the received signal when thelock_to_reference bit is set to a first value (e.g., 1).

At 610, an eye opening of the receiver's output may be identified. Aneye opening may be identified, for example, based on a generated matrixrepresentation of the receiver's output, as discussed above with respectto FIG. 1. In particular, an eye opening may be represented as a clusterof a first symbol (e.g., 0's) in the matrix representation generated bythe ODI. A vertical height of the identified eye opening may becalculated based on the generated matrix representation.

At 612, it may be determined whether the size of the eye openingidentified at 610 needs to be changed. In some embodiments, the verticalheight of the identified eye opening may be compared to a pre-definedvertical envelope, in which case the size of the identified eye openingmay need to be changed if its vertical height significantly overshootsor undershoots the pre-defined vertical envelope by more than somepredetermined threshold value.

In some embodiments, the vertical height of the eye opening may becompared to an optimum vertical eye opening, which is determined by thevalue to which the matrix representation, generated based on the outputof the bit error checker of the ODI, converges. In such embodiments, thesize of the identified eye opening may need to be changed if itsvertical height differs from the optimum vertical eye opening by morethan some predetermined threshold value. A user may select betweencomparison to a pre-defined vertical envelope and comparison to anoptimum vertical eye opening by setting a configuration bit. In someembodiments, control bits for an adaptation convergence counter filtermay be used to set how long a digital adaptation block waits beforedetermining that the vertical height of the eye opening matches that ofa predetermined or optimum eye opening. The control bits may be receivedfrom local circuitry used to implement process 600, or from externalcircuitry or a user via I/O circuitry.

If, at 612, it is determined that the size of the eye opening identifiedat 610 does not need to be changed, process 600 ends at 632. Adetermination that the size of the eye opening does not need to bechanged may indicate that the signal at the receiver's output isproperly equalized and that data can be accurately recovered using thecurrent gain settings of the receiver. A determination that the size ofthe eye opening does need to be changed may indicate that the signal atthe receiver's output is either under-equalized or over-equalized. Aprocess for determining whether a signal is under-equalized orover-equalized is discussed further with respect to FIG. 8.

If, at 612, it is determined that the size of the eye opening does needto be changed, process 600 proceeds to 614. At 614, it may be determinedwhether the receiver's output is under-equalized. If so, process 600proceeds to 624, at which it may be determined whether the AC gain ofthe receiver is at the maximum setting. If, at 624, it is determinedthat the AC gain of the receiver is not at the maximum setting, process600 proceeds to 626, at which a digital signal may be generated toincrease the AC gain of the receiver. Increasing the AC gain of thereceiver may have the effect of increasing the size of the eye opening.The digital signal to increase AC gain may be generated, for example, bydigital adaptation block 118 or digital adaptation block 214. Thedigital signal generated at 626 may be used by a digital to analogblock, such as digital to analog block 120 or digital to analog block220, to generate a bias signal that increases the AC gain of thereceiver. Process 600 then proceeds to 610.

If, at 624, it is determined that the AC gain of the receiver is at themaximum setting, process 600 proceeds to 628. At 628, it may bedetermined whether the DC gain of the receiver is at the minimumsetting. If so, it may not be possible to further improve the receiver'seye opening, even though the eye opening is not suitable for accuratedata recovery, and process 600 loops back to 604 to start over. If, at628, it is determined that the DC gain of the receiver is not at theminimum setting, process 600 proceeds to 630.

At 630, a digital signal may be generated to decrease the DC gain of thereceiver and set the AC gain of the receiver substantially equal tozero. Decreasing the DC gain of the receiver may allow for a greaterrange of AC gain. The digital signal generated at 630 may be generated,for example, by digital adaptation block 118 or digital adaptation block214. The digital signal may be used by a digital to analog block, suchas digital to analog block 120 or digital to analog block 220, togenerate a bias signal that decreases the DC gain of the receiver andsets the AC gain substantially equal to zero. Process 600 may then loopback to 610.

If, at 614, it is determined that the receiver's output is notunder-equalized, then the receiver's output is over-equalized (i.e.,because it was determined at 612 that the size of the eye opening mayneed to be changed, the output may not be properly equalized, and if animproperly equalized output is not under-equalized then it may beover-equalized) and process 600 proceeds to 616.

At 616, it may be determined whether the AC gain of the receiver is atthe minimum setting. If not, process 600 proceeds to 620, at which adigital signal may be generated to decrease the AC gain of the receiver.The digital signal may be generated, for example, by digital adaptationblock 118 or digital adaptation block 214. The digital signal generatedat 620 may be used by a digital to analog block, such as digital toanalog block 120 or digital to analog block 220, to generate a biassignal that decreases the AC gain of the receiver. Process 600 may thenloop back to 610.

If, at 616, it is determined that the AC gain of the receiver is at theminimum setting, process 600 proceeds to 618. At 618, it may bedetermined whether the DC gain of the receiver is at the maximumsetting. If so, the over-equalized signal cannot be improved further andprocess 600 ends at 632. If, at 618, it is determined that the DC gainof the receiver is not at the maximum setting, process 600 proceeds to622.

At 622, a digital signal may be generated to increase the DC gain of thereceiver and set the AC gain of the receiver substantially equal tozero. The digital signal may be generated, for example, by digitaladaptation block 118 or digital adaptation block 214. The digital signalgenerated at 622 may be used by a digital to analog block, such asdigital to analog block 120 or digital to analog block 220, to generatea bias signal that increases the DC gain of the receiver and sets the ACgain substantially equal to zero. Process 600 may then loop back to 610.

In some embodiments, a process for finding the envelope of the eyediagram may be performed every time the DC gain is adjusted. In suchembodiments, process 600 may loop back to 606 instead of 610 afterelement 622 or 630 is performed. A user may select whether to find theenvelope every time the DC gain is adjusted, or only after thelock_to_reference bit is set to a particular value (e.g., 1), by settinga control bit.

FIG. 7 shows an illustrative process 700 for finding the envelope of aneye diagram, according to an illustrative embodiment. During process700, voltage markers V_(refp) and V_(refn) start at the level of themaximum and minimum voltage rails, respectively, and are brought closertogether until the results of a horizontal phase sweep indicate thatV_(refp) and V_(refn) mark the maximum and minimum voltages,respectively, of the envelope. The elements of process 700 may becarried out by circuitry of an integrated circuit device, as discussedbelow with respect to FIG. 9.

Process 700 may start at 702, and at 704, the V_(refp) marker may be setto the level of the maximum voltage rail, V_(high). At 706, the V_(refn)marker may be set to the level of the minimum voltage rail, V_(low). At708, horizontal phases of the receiver's output may be swept. Thehorizontal phases may be swept by, for example, ODI 110 or ODI 212 andbe controlled by digital adaptation block 118 or digital adaptationblock 214.

At 710, it may be determined whether combinations of symbols (e.g.,logical 1's and 0's) have been found based on the sweep of 708. Thedetermination of 710 may be made by examining the output of a bit errorchecker (e.g., comparator) whose input is data from the sweep at 708. Insome embodiments, the determination of 710 may be based on whether thenumber of logical 1's and 0's exceeds a predetermined threshold. If, at710, it is determined that combinations of symbols (e.g., logical 1'sand 0's) have not been found, process 700 may proceed to 712, at whichthe V_(refp) marker may be decreased and the V_(refn) marker may beincreased. The absence of combinations of symbols (e.g., logical 1's and0's) may indicate that the envelope limits have not yet been found, sothe V_(refp) and the V_(refn) markers may be moved closer together.Process 700 may then loop back to 708.

If, at 710, it is determined that combinations of symbols (e.g., logical1's and 0's) have been found, the envelope limits have been found andprocess 700 may proceed to 714. At 714, the V_(envelope,p) marker may beset equal to the V_(refp) marker. At 716, the V_(envelope,n) marker maybe set equal to the V_(refn) marker. Process 700 may then end at 718.

After process 700 or a similar process is used to find the envelope ofan eye diagram of a receiver's output, an eye opening may be identifiedand analyzed. How the size of the eye opening needs to be changed maydepend on whether the signal at the receiver's output is under-equalizedor over-equalized.

FIG. 8 shows an illustrative process 800 for determining whether asignal is under-equalized and/or over-equalized, according to anillustrative embodiment. Process 800 may be used during thedetermination of 614 discussed above with respect to FIG. 6. Theelements of process 800 may be carried out by circuitry of an integratedcircuit device, as discussed below with respect to FIG. 9.

Process 800 starts at 802, and at 804, the V_(refp) marker may be setequal to the V_(envelope,p) marker. At 806, the V_(refn) marker may beset equal to the V_(envelope,n) marker. At 808, horizontal phases of thereceiver's output may be swept. The horizontal phases may be swept by,for example, ODI 110 or ODI 212 and be controlled by digital adaptationblock 118 or digital adaptation block 214.

At 810, it may be determined whether the bit error of the sweep of 808is equal to a first value (e.g., 1). The determination of 810 may bemade by examining the output of a bit error checker (e.g., comparator)whose input is data from the sweep at 808. If, at 810, it is determinedthat the bit error is equal to the first value (e.g., 1), process 800arrives at conclusion 812, where it is determined that the signal isunder-equalized, and process 800 ends at 816. A conclusion that thesignal is under-equalized may lead to the AC gain of the receiver beingincreased in order to increase the vertical height of the eye opening.In embodiments where process 800 is used during the determination ofelement 614 of process 600, the conclusion that the signal isunder-equalized may cause process 600 to proceed to 624 from 614.

If, at 810, it is determined that the bit error is not equal to thefirst value (e.g., not equal to 1), process 800 arrives at conclusion814, where it is determined that the signal is over-equalized, andprocess 800 ends at 816. A conclusion that the signal is over-equalizedmay lead to the AC gain of the receiver being decreased in order todecrease the overshooting and undershooting of the envelope. Inembodiments where process 800 is used during the determination ofelement 614 of process 600, the conclusion that the signal isover-equalized may cause process 600 to proceed to 616 from 614.

In some embodiments, it may be determined whether the bit error of thesweep of 808 of process 800 is equal to a second value (e.g., 0) insteadof the first value (e.g., 1). In such embodiments, element 804 ofprocess 800 may be replaced by setting the V_(refp) marker at a voltageabove the V_(envelope,p) marker, and element 806 may be replaced bysetting the V_(refn) marker at a voltage below the V_(envelope,n)marker. If the bit error is equal to the second value (e.g., 0), process800 may arrive at conclusion 814 that the signal is over-equalized. Ifthe bit error is not equal to the second value (e.g., not equal to 0),process 800 may arrive at conclusion 812 that the signal isunder-equalized.

It should be understood that one or more elements shown in processes500, 600, 700, or 800 may be combined with other elements, performed inany suitable order, performed in parallel (e.g., simultaneously orsubstantially simultaneously), or removed. For example, elements 704 and706 of process 700 may be performed simultaneously, or in a differentorder than shown in FIG. 7. Processes 500, 600, 700, and 800 may beimplemented using any suitable combination of hardware and/or softwarein any suitable fashion.

FIG. 9 shows an illustrative system 900 that may be used to implementsome embodiments of the present disclosure. For example, system 900 maybe used to implement processes 500, 600, 700, or 800 discussed abovewith respect to FIGS. 5-8. System 900 may be or may include a circuit orother device (e.g., processing block, integrated circuit, applicationspecific standard product (ASSP), application specific integratedcircuit (ASIC), programmable logic device (PLD), full-custom chip,dedicated chip). System 900 can include one or more of the followingcomponents: a processor 970, memory 980, I/O circuitry 950, circuit 960,and peripheral devices 940. The components of system 900 are connectedtogether by a system bus or other interconnections 930 and are populatedon a circuit board 920 which is contained in an end-user system 910.

Circuit 960 may be an integrated circuit, ASSP, ASIC, PLD, or any othersuitable circuit. Circuit 960 may contain one or more blocks ofprocessing circuitry, such as core circuitry of a PLD. In someembodiments, circuit 960 may be used to implement one or more elementsof communications systems 100 and/or 200. In some embodiments, circuit960 may include circuitry, such as processing circuitry or corecircuitry, that performs process 500, 600, 700, and/or 800.

System 900 may be used in a wide variety of applications, such ascomputer networking, data networking, instrumentation, video processing,digital signal processing, or any other application where the advantageof using programmable or reprogrammable logic is desirable. Circuit 960may be used to perform a variety of different logic functions and/orcalculate a variety of different mathematical functions. For example,circuit 960 may be configured as a controller or group of processingblocks that work in cooperation with processor 970. Circuit 960 may alsobe used to perform signal processing. In yet another example, circuit960 may be configured as an interface between processor 970 and one ofthe other components in system 900. It should be noted that system 900is only exemplary, and that the true scope and spirit of the embodimentsshould be indicated by the following claims.

The foregoing is merely illustrative of the principles of theembodiments and various modifications can be made by those skilled inthe art without departing from the scope and spirit of the embodimentsdisclosed herein. The above described embodiments of the presentdisclosure are presented for purposes of illustration and not oflimitation, and the present invention is limited only by the claimswhich follow.

What is claimed is:
 1. A method for adjusting gain of a receiver havingan output, the method comprising: generating, based on horizontal andvertical sweeps of the receiver's output, a matrix representation of thereceiver's output; identifying, based on the generated matrixrepresentation, an eye opening of the receiver's output; determining,using on-die instrument (ODI) circuitry, whether a size of the eyeopening needs to be changed; and when it is determined that the size ofthe eye opening needs to be changed, generating, using adaptationcircuitry coupled to the ODI circuitry, a digital signal to change again setting of the receiver.
 2. The method of claim 1, furthercomprising calculating a vertical height of the identified eye opening.3. The method of claim 2, wherein determining whether the size of theeye opening needs to be changed comprises comparing the calculatedvertical height to a pre-defined vertical envelope.
 4. The method ofclaim 2, wherein determining whether the size of the eye opening needsto be changed comprises comparing the calculated vertical height to anoptimum vertical eye opening.
 5. The method of claim 1, wherein elementsof the generated matrix representation have a first value where an eyeopening exists and a second value where an eye opening does not exist.6. The method of claim 1, further comprising finding envelope limits ofthe receiver's output before identifying the eye opening of thereceiver's output.
 7. The method of claim 1, further comprisingdetermining whether the receiver's output is under-equalized orover-equalized, and wherein generating the digital signal to change thegain setting of the receiver comprises: when it is determined that thereceiver's output is under-equalized, generating a digital signal toincrease AC gain of the receiver if the AC gain of the receiver is notat a maximum setting; and when it is determined that the receiver'soutput is over-equalized, generating a digital signal to decrease the ACgain of the receiver if the AC gain of the receiver is not at a minimumsetting.
 8. The method of claim 7, wherein generating the digital signalto change the gain setting of the receiver comprises: when it isdetermined that the receiver's output is under-equalized and the AC gainof the receiver is at the maximum setting, generating a digital signalto decrease DC gain of the receiver and set the AC gain of the receiversubstantially equal to zero; and when it is determined that thereceiver's output is over-equalized and the AC gain of the receiver isat the minimum setting, generating a digital signal to increase the DCgain of the receiver and set the AC gain of the receiver substantiallyequal to zero.
 9. Adaptation circuitry in an integrated circuitryoperable to: identify, based on a matrix representation of a receiver'soutput generated from horizontal and vertical sweeps of the receiver'soutput, an eye opening of the receiver's output; determine whether asize of the eye opening needs to be changed; and when it is determinedthat the size of the eye opening needs to be changed, generate a digitalsignal to change a gain setting of the receiver.
 10. The adaptationcircuitry of claim 9, further operable to: calculate a vertical heightof the identified eye opening; and compare the calculated verticalheight to a pre-defined vertical envelope.
 11. The adaptation circuitryof claim 9, further operable to: calculate a vertical height of theidentified eye opening; and compare the calculated vertical height to anoptimum vertical eye opening.
 12. The adaptation circuitry of claim 9,further operable to control the horizontal and the vertical sweeps ofthe receiver's output.
 13. The adaptation circuitry of claim 9, furtheroperable to find envelope limits of the receiver's output.
 14. Theadaptation circuitry of claim 9, further operable to: determine whetherthe receiver's output is under-equalized or over-equalized; when it isdetermined that the receiver's output is under-equalized: generate adigital signal to increase AC gain of the receiver if the AC gain of thereceiver is not at a maximum setting, and if the AC gain of the receiveris at the maximum setting, generate a digital signal to decrease DC gainof the receiver and set the AC gain of the receiver substantially equalto zero; and when it is determined that the receiver's output isover-equalized: generate a digital signal to decrease the AC gain of thereceiver if the AC gain of the receiver is not at a minimum setting, andif the AC gain of the receiver is at the minimum setting, generate adigital signal to increase the DC gain of the receiver and set the ACgain of the receiver substantially equal to zero.
 15. A communicationssystem comprising: a receiver having at least one amplifier; an on-dieinstrument (ODI) configured to sample an output of the receiver; and afirst digital adaptation unit configured to: analyze outputs of the ODI;control horizontal and vertical sweeps of the receiver's output that areused to generate a matrix representation of the receiver's output; andgenerate a first set of digital signals for adjusting a gain setting ofat least one amplifier in the receiver.
 16. The system of claim 15,further comprising: a decision feedback equalizer (DFE) configured toamplify the output of the receiver; and a clock-data recovery (CDR) unitcoupled to an output of the DFE and configured to send data to the ODI.17. The system of claim 16, further comprising a second digitaladaptation unit configured to generate a second set of digital signalsfor adjusting a gain setting of the DFE.
 18. The system of claim 16,further comprising circuitry for bypassing the DFE such that the CDRunit is coupled to the output of the receiver.
 19. The system of claim15, further comprising a digital-to-analog converter configured togenerate, based on the first set of digital signals, a bias signal thatsets the gain setting of at least one amplifier in the receiver.
 20. Thesystem of claim 19, wherein: the receiver has a plurality of amplifiers;the digital-to-analog converter generates, based on the first set ofdigital signals, a first plurality of bias signals for setting AC gainsof the plurality of amplifiers; and the digital-to-analog convertergenerates, based on the first set of digital signals, a second pluralityof bias signals for setting DC gains of the plurality of amplifiers.